<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>

    <pre>

    1、构造函数方法：Array.from() -- ★★  用于转换数组
      将类数组或可遍历对象转换为真正的数组
      方法还可以接受第二个参数，作用类似于数组的map方法，用来对每个元素进行处理，将处理后的值放入返回的数组。

    2、实例方法：find() --- ★★★★
      用于找出第一个符合条件的数组成员，如果没有找到返回undefined
      // arr.find(item => item > 0 )  如果找到了 结果为 item ，如果没找到 结果为 undefined

    3、实例方法：findIndex() --- ★★★★★
      用于找出第一个符合条件的数组成员的位置(索引)，如果没有找到返回-1

    4、实例方法：includes() --- ★★★★★
      表示某个数组是否包含给定的值，返回布尔值。

    5、forEach 迭代(遍历) 数组  --- ★★★★★  遍历数组   arr.forEach(item => console.log(item))

    6、filter 筛选数组 -- 返回一个新的数组 -- ★★★★★  筛选出符合所给函数条件的所有元素，组成一个新的数组

    7、some 查找数组中是否有满足条件的元素 -- 返回结果 true 或者 false -- ★★★★★
    // arr.spme(item => item > 0)  -- true / false

    8、slice 是截取数组，并返回一个新数组 arr.slice(start,end)  start是开始下标，end是结束下标。-- ★★★

    9、splice （具有增删改的功能）  arr.splice(strat,deletecount,[item1,item2]) -- ★★★★★ 
    
    10、sort 用于给数组排序 
          var numbers = [4, 2, 5, 1, 3];
             numbers.sort(function(a, b) {
                return a - b;
              });
           console.log(numbers); [1, 2, 3, 4, 5]
    <script>
      let a =[{
            id: 1,
            name: 'Tom'
        }, {
            id: 2,
            name: 'Jerry'
        }, {
            id: 3,
            name: 'Tyke'
        }];
        a.splice(1,0,{id:1.5 ,name:'spiak'})// 在下标 1 后面 增加一个数组元素  （增）
        console.log(a)//[{id: 1, name: "Tom"}, {id: 1.2, name: "spiak"}, {id: 2, name: "Jerry"}, {id: 3, name: "Tyke"}]
        a.splice(1,1)// 从下标 1 开始 ，删除 1 个  （删）
        console.log(a)//[{id: 1, name: "Tom"}, {id: 2, name: "Jerry"}, {id: 3, name: "Tyke"}]
        a.splice(1,1,{id:2 ,name:'spiak'}); // 将下标 1 后面的一个数组元素替换为指定元素 (改)
        console.log(a)// [{id: 1, name: "Tom"}, {id: 2, name: "spiak"}, {id: 3, name: "Tyke"}]
        //splice这个方法很强大，牛皮

    </script>

  </pre>

    <script>
        // var arr = [{
        //     id: 1,
        //     name: 'Tom'
        // }, {
        //     id: 2,
        //     name: 'Jerry'
        // }, {
        //     id: 3,
        //     name: 'Tyke'
        // }]

        // // let result = arr.find((item, index) => {
        // //   return item.id === 1
        // // })

        // let result = arr.findIndex((item, index) => {
        //     return item.id === 4
        // })

        // console.log(result)


        let arrayLike = {
            '0': 'a',
            '1': 'b',
            '2': 'c',
            length: 3
        }

        let arr = Array.from(arrayLike, item => item)

        console.log(arr)

        // let arr = [
        //   {
        //     id: 1,
        //     name: 'a'
        //   },
        //   {
        //     id: 2,
        //     name: 'b'
        //   },
        //   {
        //     id: 2,
        //     name: 'c'
        //   }
        // ]


        // let result = arr.find((item, index) => {
        //   return item.id == 2
        // })

        // console.log(result)

        // let arr1 = arr.find(item => item.id === 2)

        // console.log(arr1)

        // let arr = [1, 2, 3, 4]

        // let index = arr.findIndex((item, index) => {
        //   return item == 5
        // })

        // console.log(index)

        // let arr = [1, 2, 3, 4]

        // console.log(arr.includes(6))




        // let result = arr.includes(5)

        // console.log(result)

        // let result = arr.includes((item, index) => {
        //   return item == 1
        // })

        // console.log(result)
    </script>
</body>

</html>